<?php

// Application

pref('[Loop]/application/code', 'My-Application');

if (isset($_SERVER['HTTP_HOST']) == true)
{
	pref('[Loop]/application/domain', $_SERVER['HTTP_HOST']);
}

pref('[Loop]/application/name', 'My Application');
pref('[Loop]/application/owner/name', 'My Company');
pref('[Loop]/application/scheme', 'http');
pref('[Loop]/application/universe', '');
pref('[Loop]/application/yearOfLaunch', '2011');


// Authentication

pref('[Loop]/authentication/forceSignIn', true);
pref('[Loop]/authentication/source', 'SESSION');
pref('[Loop]/authentication/userEmail', 'userEmail');
pref('[Loop]/authentication/userEncryptedPassword', 'userEncryptedPassword');
pref('[Loop]/authentication/userId', 'userId');
pref('[Loop]/authentication/userReference', 'userReference');


// Cache

pref('[Loop]/cache/client/duration', 60 * 60 * 24 * 30);
pref('[Loop]/cache/server/duration', 60 * 60 * 24 * 1);


// CDN

pref('[Loop]/cdn/prefix', 'cdn.');


// Cookie

pref('[Loop]/cookie/durationInMinutes', 0);
pref('[Loop]/cookie/prefix', '');


// Database

pref('[Loop]/database/activeTransaction', false);
pref('[Loop]/database/driver', DRIVER_MYSQLI);
pref('[Loop]/database/isShared', true);
pref('[Loop]/database/login/maxLength', 16);
pref('[Loop]/database/name/maxLength', 64);


// Deployment

pref
(
	'[Loop]/deployment/environments',
	array
	(
		'Local' => 'local.myapp.com/',
		'Dev' => 'dev.myapp.com/',
		'Test' => 'test.myapp.com/',
		'Prod' => 'myapp.com/'
	)
);


// Documentation

pref
(
	'[Loop]/documentation/concepts', 
	array
	(
		'Class',
		'Model'
	)
);

pref
(
	'[Loop]/documentation/richConcepts', 
	array
	(
	)
);

pref
(
	'[Loop]/documentation/allowedExtensions', 
	array
	(
		'.php'
	)
);


// Exceptions

pref('[Loop]/exceptions/die', true);
pref('[Loop]/exceptions/level', E_ALL | E_STRICT);
pref('[Loop]/exceptions/render', true);
pref('[Loop]/exceptions/showWarnings', false);


// Features

pref('[Loop]/features/authentication', false);
pref('[Loop]/features/cache/client', true);
pref('[Loop]/features/cache/server', true);
pref('[Loop]/features/cdn', true);
pref('[Loop]/features/debug', false);
pref('[Loop]/features/deployment', true);
pref('[Loop]/features/notifications', true);
pref('[Loop]/features/permissions', false);
pref('[Loop]/features/profiling', false);


// File upload

pref('[Loop]/fileUpload/maxSize', 2);


// Localization

pref('[Loop]/localization/defaultLanguageIsoCode', LANGUAGE_ENGLISH);
pref('[Loop]/localization/languages', array(LANGUAGE_ENGLISH));
pref('[Loop]/localization/languageIsoCode', LANGUAGE_ENGLISH);
pref('[Loop]/localization/timezone', 'Greenwich');
pref('[Loop]/localization/timezone/GMT', '+00:00');
pref('[Loop]/localization/checkStringsOutputFileName', 'report');
pref('[Loop]/localization/checkStringsOutputFolder', 'Output');


// Models that can be extended / replaced

pref('[Loop]/model/CSharedObject/durationOfAvaibility', 60 * 60 * 24 * 7 * 5); // 5 weeks
pref('[Loop]/model/nbCustomProperties', 32);


// Notifications

pref('[Loop]/notifications/sandbox', false);

pref('[Loop]/notifications/sms/action', 'envoi');
pref('[Loop]/notifications/sms/host', 'http://www.myapp.com');
pref('[Loop]/notifications/sms/libUnivers', '');
pref('[Loop]/notifications/sms/login', '');
pref('[Loop]/notifications/sms/password', '');

pref('[Loop]/notifications/smtp/authMode', 'LOGIN');
pref('[Loop]/notifications/smtp/bcc', array('bcc@myapp.com'));
pref('[Loop]/notifications/smtp/from', 'from@myapp.com');
pref('[Loop]/notifications/smtp/host', 'smtp.myapp.com');
pref('[Loop]/notifications/smtp/isSecure', true);
pref('[Loop]/notifications/smtp/login', 'postmaster@myapp.com');
pref('[Loop]/notifications/smtp/password', '');
pref('[Loop]/notifications/smtp/port', 465);


// Objects

pref('[Loop]/object/durationOfLock', 5 * 60);
pref('[Loop]/object/durationOfTemporaryObject', 86400);
pref('[Loop]/object/propertyName/maxLength', 64);


// Permissions

pref('[Loop]/permissions/ipAndKey/rights', array());


// Profiling

pref('[Loop]/profiling/duration/classOfIcon', 'icon-time');
pref('[Loop]/profiling/duration/max', 1);

pref('[Loop]/profiling/flag/critical/classOfIcon', 'danger');
pref('[Loop]/profiling/flag/high/classOfIcon', 'danger');
pref('[Loop]/profiling/flag/low/classOfIcon', 'success');
pref('[Loop]/profiling/flag/medium/classOfIcon', 'warning');

pref('[Loop]/profiling/memory/classOfIcon', 'icon-hdd');
pref('[Loop]/profiling/memory/max', 5 * 1024000);

pref('[Loop]/profiling/query/classOfIcon', 'icon-cog');
pref('[Loop]/profiling/query/max', 20);


// Sandbox

pref
(
	'[Loop]/APIs/directories', 
	array
	(
		'Class',
		'Model'
	)
);

pref
(
	'[Loop]/APIs/allowedExtensions', 
	array
	(
		'.php'
	)
);


// Strings

pref
(
	'[Loop]/strings/excludedConcepts', 
	array
	(
		'.',
		'..',
		'.svn',
		'Class',
		'Component',
		'Fast',
		'Json',
		'Notification',
		'Preference', 		
		'String',
		'Static',
		'Stylesheet',
		'Test', 
		'Xml'
	)
);

pref
(
	'[Loop]/strings/allowedExtensions', 
	array
	(
		'.html',
		'.php'
	)
);


// Time

pref('[Loop]/time/metric', METRIC_DAY);
pref('[Loop]/time/mySql/firstDayOfWeek', 2); // Sunday:1, Monday:2,...
pref('[Loop]/time/limit/day', 365);
pref('[Loop]/time/limit/week', 52);
pref('[Loop]/time/limit/month', 13);
pref('[Loop]/time/limit/quarter', 4);


// UI

pref('[Loop]/ui/defaultColorOfObjects', '#ff0000');
pref('[Loop]/ui/delayAfterKeyDown', 500);
pref('[Loop]/ui/nbItemsPerPage', 20);
pref('[Loop]/ui/nbPagesPerPicker', 3);

pref
(
	'[Loop]/ui/notifications/classesOfIcons',
	array
	(
		'error' => 'error',
		'information' => 'info',
		'success' => 'ok',
		'warning' => 'warning'
	)
);


// Views

pref('[Loop]/views/pathToCommon.css', '/[Loop]/Stylesheet/Common.css');
pref('[Loop]/views/pathToCommon.js', '/[Loop]/Javascript/Common.js');

pref('[Loop]/views/pathToPageError.html', '/Html/Page.Error.html');
pref('[Loop]/views/pathToPageHome.html', '/Html/Page.Home.html');
pref('[Loop]/views/pathToPageResetPassword.html', '/[Loop]/Html/Page.Reset-Password.html');
pref('[Loop]/views/pathToPageSignIn.html', '/[Loop]/Html/Page.Sign-In.html');

pref('[Loop]/views/pathToSnippetFooter.css', '/[Loop]/Stylesheet/Snippet.Footer.css');
pref('[Loop]/views/pathToSnippetFooter.html', '/[Loop]/Html/Snippet.Footer.html');
pref('[Loop]/views/pathToSnippetFooter.js', '/[Loop]/Javascript/Snippet.Footer.js');

pref('[Loop]/views/pathToSnippetHeader.css', '/[Loop]/Stylesheet/Snippet.Header.css');
pref('[Loop]/views/pathToSnippetHeader.html', '/[Loop]/Html/Snippet.Header.html');
pref('[Loop]/views/pathToSnippetHeader.js', '/[Loop]/Javascript/Snippet.Header.js');

pref('[Loop]/views/pathToUi.css', '/[Loop]/Stylesheet/Ui.css');
pref('[Loop]/views/pathToUi.js', '/[Loop]/Javascript/Ui.js');
pref('[Loop]/views/pathToUiProfilingBar.html', '/[Loop]/Html/Ui.ProfilingBar.html');
pref('[Loop]/views/pathToUiProfilingBar.js', '/[Loop]/Javascript/Ui.ProfilingBar.js');
pref('[Loop]/views/pathToUiProfilingBar.css', '/[Loop]/Stylesheet/Ui.ProfilingBar.css');

pref
(
	'[Loop]/views/urisOfFirstJavascripts',
	array
	(
	)
);

pref
(
	'[Loop]/views/urisOfLastJavascripts',
	array
	(
		'[Loop]/static/jQuery/1.8.2/jquery.min.js',
		'[Loop]/static/Bootstrap/2.2.2/js/bootstrap.min.js'
	)
);

pref
(
	'[Loop]/views/urisOfStylesheets',
	array
	(
		'[Loop]/static/Bootstrap/2.2.2/css/bootstrap.min.css',
		'[Loop]/static/Bootstrap/2.2.2/css/bootstrap-responsive.min.css'
	)
);

?>
